// 模块名hellofx可以自定义，但是必须和pom.xml中的mainClass保持一致
module AlohaFX {
    requires javafx.controls;
    requires javafx.fxml;
    requires java.prefs;
    requires java.xml.bind;
    requires cn.hutool;
    requires lombok;

    /**
     * exports：用于指定哪些包可以从模块中访问，该关键字后面需要跟一个包名。比如exports cn.nirvana.aloha;表示cn.nirvana.aloha包可以被其他模块访问。
     */
    exports cn.nirvana.aloha;
    exports cn.nirvana.aloha.controller;
    exports cn.nirvana.aloha.model;
    /**
     * opens：用于指定哪些包可以被反射访问，该关键字后面也需要跟一个包名。比如opens cn.nirvana.aloha.controller to javafx.fxml;表示cn.nirvana.aloha.controller包可以被javafx.fxml模块通过反射访问。
     */
    opens cn.nirvana.aloha to javafx.fxml;
    opens cn.nirvana.aloha.controller to javafx.fxml;
    opens cn.nirvana.aloha.model to javafx.fxml, java.xml.bind;
}